[IA64] Only one serial console port on Tiger2
authorawilliam@xenbuild2.aw <awilliam@xenbuild2.aw>
Thu, 15 Feb 2007 17:31:39 +0000 (10:31 -0700)
committerawilliam@xenbuild2.aw <awilliam@xenbuild2.aw>
Thu, 15 Feb 2007 17:31:39 +0000 (10:31 -0700)
Tiger2 also only has one serial port at 0x2f8, so consolidate
com port setup w/ Tiger4.

Signed-off-by: Simon Horman <horms@verge.net.au>
xen/arch/ia64/linux-xen/setup.c

index b82e9a7b239654f6df42f94b0a194a91cd863571..362de5e7daaab28e678c05033842ac65bf2f249b 100644 (file)
@@ -318,7 +318,7 @@ io_port_init (void)
 static int __init
 intel_tiger_console_setup(void)
 {
-       extern struct ns16550_defaults ns16550_com1, ns16550_com2;
+       extern struct ns16550_defaults ns16550_com1;
        efi_system_table_t *systab;
        efi_config_table_t *tables;
        struct acpi20_table_rsdp *rsdp = NULL;
@@ -353,32 +353,21 @@ intel_tiger_console_setup(void)
        if (strncmp(hdr->signature, XSDT_SIG, sizeof(XSDT_SIG) - 1))
                return -ENODEV;
 
-       /* Only looking for Intel systems */
-       if (strncmp(hdr->oem_id, "INTEL", 5))
+       /*
+        * Only looking for Intel Tiger systems
+        * Tiger 2: SR870BH2
+        * Tiger 4: SR870BN4
+        */
+       if (strncmp(hdr->oem_id, "INTEL", 5) ||
+           (!strncmp(hdr->oem_table_id, "SR870BH2", 8) &&
+            !strncmp(hdr->oem_table_id, "SR870BN4", 8)))
                return -ENODEV;
 
-       if (!strncmp(hdr->oem_table_id, "SR870BH2", 8)) {
-               /* Tiger 2 */
-               ns16550_com1.baud = BAUD_AUTO;
-               ns16550_com1.io_base = 0x3f8;
-               ns16550_com1.irq = 4;
-
-               ns16550_com2.baud = BAUD_AUTO;
-               ns16550_com2.io_base = 0x2f8;
-               ns16550_com2.irq = 3;
-
-               return 0;
-
-       } else if (!strncmp(hdr->oem_table_id, "SR870BN4", 8)) {
-               /* Tiger 4 */
-               ns16550_com1.baud = BAUD_AUTO;
-               ns16550_com1.io_base = 0x2f8;
-               ns16550_com1.irq = 3;
-               
-               return 0;
-       }
+       ns16550_com1.baud = BAUD_AUTO;
+       ns16550_com1.io_base = 0x2f8;
+       ns16550_com1.irq = 3;
 
-       return -ENODEV;
+       return 0;
 }
 #endif